$(document).ready(function() {
    
    $("a.action").fancybox({
        'transitionIn'	:   'fade',
        'transitionOut'	:   'fade',
        'speedIn'	:   600, 
        'speedOut'	:   200, 
        'overlayShow'	:   true,
        'href'          :   $(this).attr('href'),
        'autoDimensions':   false,
        'width'         :   'auto',
        'height'        :   'auto',
        'autoScale'     :   false,
        'onClosed'      :   function() {}
    });
    
    $("a.delete").click(function() {
        $.ajax({ 
            url: $(this).attr('href'),
            success: function(data) {
                var xml = $.parseXML(data);
                var id = $(xml).find("id").text(); 
                if (id != "") {
                    var td = $("td[id=" + id + "]");
                    $(td).effect("highlight", {color:'red'}, 3000);
                    var tr = td.closest('tr');
                    $(tr).delay(300).fadeOut(300, function() {
                        $(tr).remove();
                    });
                }
                else {
                    $.fancybox(data);
                }
            }
        });
        
        return false;
    });
    
    $("a.default").click(function() {
        $.ajax({ 
            url: $(this).attr('href'),
            success: function(data) {
                var xml = $.parseXML(data);
                var id = $(xml).find("id").text(); 
                if (id != "") {                  
                    $("td[id]").each(function() {                               
                        if ($(this).attr("id") == id) {
                            $(this).html("<b>" + $(xml).find("address").text() + " (adresse par défaut)</b>");
                            $(this).effect("highlight", {color:"#00FF00"}, 3000);
                        } else {
                            var text = $(this).html();
                            $(this).html(text.replace("<b>", "").replace(" (adresse par défaut)</b>", ""));
                        }
                    });
                }
                else {
                    $.fancybox(data);
                }
            }
        });
        
        return false;
    });
    
    $("#addressForm").bind("submit",function() { 
 
       var valid = true;
       
       $("input").each(function() {
            if ($(this).attr("required") == "required" && $(this).val().length < 1) {
                valid = false;
                $(this).css({borderColor: 'red'}).focus(function()  {
                    $(this).css({borderColor: 'rgb(200,200,200)'});
		});
            }
        });
        if (valid) {
            $.fancybox.showActivity();   

            $.ajax({ 
                    type: "POST", 
                    data: $('#addressForm').serialize(), 
                    url: $("#addressForm").attr("action"),
                    success: function(data) {
                        var xml = $.parseXML(data);
                        var id = $(xml).find("id").text();
                        var action = $(xml).find("action").text();
                        if (id == "") {
                            $.fancybox(data);
                        } else if (action == "edit") {
                            $.fancybox.close();
                            $("td[id]").each(function() {                               
                               if ($(this).attr("id") == id) {
                                   if ($(xml).find("default").text() == 0) {
                                       $(this).html($(xml).find("address").text());
                                   } else {
                                       $(this).html("<b>" + $(xml).find("address").text() + " (adresse par défaut)</b>");
                                   }
                                   $(this).effect("highlight", {color:"#00FF00"}, 3000);
                               } 
                            });
                        } else if (action == "add") {
                            $.fancybox.close();
                            var last = $("tr:last > td[id]").attr("id");
                            $("tr:last").clone().insertAfter($("tr:last"));
                            $("tr:last > td[id]").html($(xml).find("address").text()); 
                            $("tr:last > td.actions").html($("tr:last > td.actions").html().replace(new RegExp(last, 'g'), id));
                            $("tr:last > td[id]").attr("id", id);  
                            $("td[id]:last").effect("highlight", {color:"#00FF00"}, 3000);
                        }
                    } 
            });
        } else {
            $("div.error_summary").html("Veuillez remplir tous les champs");
            $("div.error_summary").css("display", "block");
            $("#fancybox-content").height("auto");
            $("#fancybox-wrap").height("auto");
            $.fancybox.center();
        }

        return false;
     });
});



